Notifications
Clear all

substituir linhas de comando por chamadas de macros

20 Posts
3 Usuários
0 Reactions
2,148 Visualizações
(@edcronos)
Posts: 1006
Noble Member
Topic starter
 

Existe algum inconveniente em usar as macros assim?

Sub inicio()
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    ' Desproteger planilha
    'outras linhas de comandos
End Sub
Sub Final()
'outras linhas de comando
'proteger planilha
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
End Sub
Public Function Limit() As Byte
    If ActiveSheet.Name = Plan_Fixa Then Limit = 1 Else Limit = 0
End Function
Sub test()

    If Limit = 1 Then GoTo Saida
    inicio
    
    Call SetorL("dh")
    ColunO = Range(Ti & Li, Cf & Lf).Value2
    'Call Espelhar(ColunO, 1)
    Call Desloc_Array(ColunO, 1, "q", 2)
    Range(Ti & Li, Cf & Lf).Value2 = ColunO
    
    Final
Saida:

End Sub
Sub Trocar()
    If Limit = 1 Then GoTo Saida
    inicio

    Call troca_setor(5, 4)
    
    Final
Saida:
End Sub

bem, funciona e se cria um padrão,
Mas pode vim a gerar problemas futuros?

att.

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 02/08/2014 6:36 am
(@edcronos)
Posts: 1006
Noble Member
Topic starter
 

aproveitando e fazendo a pergunta que nunca tive coragem de fazer...
para que serve esse clicar na mãozinha?

vale algum bonus extra no final do mes?
onde eu resgato o valor das clicadas :D

att.

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 03/08/2014 6:36 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

KKKKKKKKKKKKKKKKKKKKKKKKKKKK EU RI ALTO !
na verdade nào valem nada !

Valem que em algum momento o forum contabiliza qtas vezes alguém foi agradecido, eu aumenta o ranking de aceitação e acertos do usuário. Tornando-o mais apto a ajudar qualquer um.

Mas em termos de grana, não vale porra nenhuma, o que é uma tristeza na verdade, kkkk

ë mais reconhecimento, quando se acumula *agradecimentos, é como se acumulasse curtidas do facebook, o prazer é mais pessoal do que monetário !

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 03/08/2014 6:44 am
(@edcronos)
Posts: 1006
Noble Member
Topic starter
 

sempre achei isso estranho

eu até tento ajudar no limite de meus conhecimentos,
e normalmente a pessoa clica na mãozinha e some nem tem o trabalho de escrever a palavra "Obrigado",

então pelo pessoal estar tão preocupado com isso, pensei que valia dinheiro :roll:
estava até contando de no final do ano resgatar o meu extra mesmo que pouco :P :D
e não uso face até exclui o meu...

cara já perdi até o rumo do tópico, para falar a verdade não lembro nem qual que era a minha duvida...
ninguém vai lê isso tudo.

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 03/08/2014 6:59 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Sinceramente, pra mim, uma pessoa leu. já tá de bom tamanho.'
Eventualmente talvez em 10 anos, mais umas 4 vão ler...
Eu tô de boa !

Fiz e faço o que acho melhor pra MIM no momento. Tá vendo, vc achou que era pra vc? Não. O que me motiva ainda é egoísmo, ehehehe

O que pra MIM tá bom, é ajudar o próximo. Por mais nobre que a razão pareça ser, ainda é egoísta, pq eu só fiz pq ME satisfaz, olha q doidera !

ehehehe

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 03/08/2014 7:19 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Falei que ia comentar todas as repostas! Por favor pessoal, não se ofendam, eu estou dando dicas pra melhorar o desempenho geral da nação! :)

chance de cometer um erro de digitação é pequena.

Meu, usa o Ctrl+Espaço, pra forçar o intelisense a completar o nome pra ti... ;-)

Já em códigos maiores, é importante usar o "option explicit"

O ideal é usar sempre. Trocar a opção no próprio Excel para ele automaticamente forçar vc a declarar tudo sempre.
- No VBE vá em Ferramentas / Opções
- Na primeira aba, o segundo checkbox, Requerer Declaração de Variáveis (o meu tá em inglês, Require Variable Declaration), veja aí como tá em português.
- Assim, toda vez que vc criar um módulo, pra sempre, o Option Explicit já estará escrito no topo. Acho isso fantástico.

identificando o tipo de variável

Eu fazia isso, sempre.

dim strNome as string
dim lngIdade as Long
dim arrDados as variant

E assim por diante... Até quando descobri que nos modelos mais novos de programação, o Visual Studio impede a compilação caso o dado sendo inserido não seja do tipo certo, e fui aos poucos acostumando a não deifinir o tipo no nome. As vezes ainda faço, mas evito. O nome tem que ser tão descritivo, que torna desnecessário a definição do tipo no nome. Ficando assim:

dim Nome as string
dim Idade as Long
dim Dados as variant

... "goto só se usa uma vez no código e somente para tratamento de erro", ... "on error resume next" não se deve usar nunca.

Exato, "GoTo" é só pro tratamento de erros. "On Error Resume Next", evitar ao máximo, e se usar, melhor ter uma boa justificativa. Eu uso, pouco mas uso, e sempre comento o motivo.

se as variáveis são públicas, acho que não convém ficar limpando os valores dela

Exato, eu procuro usar publicas somente em casos em que é algo que vou usar muito, e quero economizar na passagem de parâmetros. Na maioria são constantes que não devem mudar, tipo:
NomeDoProgramador
GerenteDoProjeto
EmpresaDeDesenvolvimento
ContatosDaEmpresa
NomeDoCliente
NomeDoProjeto
São constantes e o código não as muda. Eu as mudo conforme inicio cada projeto, sempre usando meu modelo.

Eu li um pouco a respeito, assim como li um pouco sobre módulos de classe, mas nunca usei de fato

Eu uso Types, não uso com frequencia as classes. Me perco. Queria aprender tb.
Qto a Types, conforme prometi, vou escrever um artigo sobre ByVal e ByRef, e tb um sobre Types, atendendo a pedidos. Vai ser mais um daqueles meus tutoriais eternos, tipo do Range Dinâmico e tal...

Ufa, to empolgado e respondendo agora vamos pra próxima! rsrsrs

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 03/08/2014 8:30 am
Página 2 / 2